package com.libinshen.wxpay.login.controller;

import com.libinshen.wxpay.common.vo.CommonResult;
import com.libinshen.wxpay.login.service.WxMiniappLoginService;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;

/***
 *微信小程序登录
 *
 *      详见流程参考wxpay/img/小程序登录流程图
 *      premise:
 *            开发者需要在微信开放平台注册一个小程序，并获取到App ID和App Secret，这两个参数将用于后续的登录操作。
 *
 *        the flow is below;
 *           前端假如是VUE
 *                1： 向微信服务端发送 weixin.login()请求，获得临时登录凭证code.
 *                2:  调用getPhoneNumber()方法获取PhoneCode授权码
 *           后端操作
 *               1：通过临时登录code /appId /appSecet构建url 请求微信服务器获取openId和sessionKey
 *               2：构建token返回前端 以及执行入库的其他操作
 *
 */
@RequestMapping
@RestController
public class WxMiniappLoginController {

    @Resource
    private WxMiniappLoginService wxMiniappLoginService;

    /**
     * @param code 临时登录微信服务器token
     * @return
     */
    public CommonResult miniAppLogin(String code) {
        return wxMiniappLoginService.login(code);
    }


}
